Round 1 - Technical (Live Coding)
This round began with a brief introduction and focused on live coding with the following questions:
๐น SQL window functions.
๐น Output-based questions where I was shown an output and asked to write the SQL query to achieve that result.
๐น SQL functions like `COALESCE` and handling null values in string columns during joins.
๐น Count of joins involving null and numerical values.
๐น Python string and array-based coding questions, which were medium to easy level.
๐น PySpark code to pass a schema while reading data.
๐น PySpark code to create a new column based on conditions.
๐น Spark optimization techniques.
๐น Questions on Spark architecture.
๐น AWS-related questions on Glue, Lambda, S3, and project-related cross-questioning.
Round 2 - Techno-Managerial
This round was also conducted online and included:
๐น How to optimize an SQL query.
๐น Spark optimization techniques.
๐น Questions on pandas and numpy, focusing on transformation functions.
๐น In-depth discussion on data engineering-related professional and personal projects, including cross-questioning.
๐น Situation-based managerial questions (non-technical).
๐น Why I was interested in joining BMS (they were looking for good reasons).
Round 3 - HR Discussion
๐นSalary Negotiation.
๐นVariable component discussion.
I received the offer letter after the final HR round..๐